home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 21 / Cream of the Crop 21 (Terry Blount) (October 1996).iso / os2 / sio157.zip / VMODEM.TXT < prev    next >
Text File  |  1996-08-27  |  40KB  |  905 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.                                       VMODEM
  25.                            Technical Reference Manual
  26.  
  27.  
  28.  
  29.                      Copyright (c) 1995 by Raymond L. Gwinn
  30.                                 26 Tanager Place
  31.                           Beckley, West Virginia 25801
  32.                                All Rights Reserved
  33.  
  34.                                  August 15, 1996
  35.  
  36.  
  37.                              CompuServe: 72662,3547
  38.                              InterNet: ray@gwinn.com
  39.                               Voice: 1-304-255-7900
  40.                                FAX: 1-304-255-7902
  41.                      BBS: 1-304-255-7903 or vmbbs.gwinn.com
  42.                             WEB http://www.gwinn.com
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.                                   INTRODUCTION
  59.  
  60.      The Virtual Modem is a concept that the author believes will change
  61.      the way serial data communications is done and thought of.  It is
  62.      going to bring the Internet alive more then ever before.  Perhaps it
  63.      will not be this implementation of a Virtual Modem, but the concept
  64.      will remain and be used for a long time.  The concept of the Virtual
  65.      Modem was born from the desire to make the SIO support BBS available
  66.      via Internet.  In only a few minutes, I was convinced the Virtual
  67.      Modem was a solution of a multitude of problems that Internet access
  68.      poses.
  69.  
  70.      The Virtual Modem removes most of the complexities and mysteries of
  71.      the Internet by allowing common, well understood, programs to be used
  72.      to access the Internet highway.  Users can use programs like PmComm
  73.      and TE/2 to download files from a BBS (across the Internet) using
  74.      common protocols like ZMODEM.  The dialing directories of terminal
  75.      programs can contain Internet addresses instead of phone numbers for
  76.      easy access to remote sites.
  77.  
  78.      BBS SysOps can simply declare one or more of their BBS's
  79.      communications ports as a Virtual Modem and users can then "dial" in
  80.      over the Internet and no BBS software changes should be necessary.  Is
  81.      your BBS ready for 20 million new users that can access it without
  82.      making a long distance call?  This Virtual Modem implements protocols,
  83.      including a Telnet server which allows most anyone on Internet to
  84.      access your system.
  85.  
  86.      Users transferring large volumes of data across phone lines (like
  87.      FidoNet echomail) can now use the Internet highway instead.  Again,
  88.      software changes should be minimal, if any at all.
  89.  
  90.      Vmodem is unique in that it has a dual personality of both Server and
  91.      Client.  The Server/Client personality is determined by the direction
  92.      of the connection (outgoing or incoming).
  93.  
  94.  
  95.  
  96.  
  97.      ii
  98.  
  99.                                 TABLE OF CONTENTS
  100.  
  101.      WHAT IS VMODEM  . . . . . . . . . . . . . . . . . . . . . . . . .    1
  102.  
  103.      DISTRIBUTION, ORDERING AND SUPPORT  . . . . . . . . . . . . . . .    2
  104.           Distribution and Ordering  . . . . . . . . . . . . . . . . .    2
  105.                SIO Distribution and Support BBS  . . . . . . . . . . .    2
  106.           Support  . . . . . . . . . . . . . . . . . . . . . . . . . .    2
  107.  
  108.      GETTING IT GOING  . . . . . . . . . . . . . . . . . . . . . . . .    5
  109.           TCP/IP Required  . . . . . . . . . . . . . . . . . . . . . .    5
  110.                TCP/IP Sockets  . . . . . . . . . . . . . . . . . . . .    5
  111.                The default port number . . . . . . . . . . . . . . . .    5
  112.  
  113.      The SIO.SYS command line  . . . . . . . . . . . . . . . . . . . .    5
  114.  
  115.      THE VIRTUAL MODEM . . . . . . . . . . . . . . . . . . . . . . . .    7
  116.           AT Commands Supported  . . . . . . . . . . . . . . . . . . .    7
  117.           S Registers Supported  . . . . . . . . . . . . . . . . . . .    8
  118.           Result Codes . . . . . . . . . . . . . . . . . . . . . . . .    8
  119.                NO CARRIER  . . . . . . . . . . . . . . . . . . . . . .    8
  120.                NO DIALTONE . . . . . . . . . . . . . . . . . . . . . .    8
  121.                  . . . . . . . . . . . . . . . . . . . . . . . . . . .    8
  122.                BUSY  . . . . . . . . . . . . . . . . . . . . . . . . .    8
  123.                CONNECT 57600/ARQ/VMP . . . . . . . . . . . . . . . . .    8
  124.                CONNECT 57600/ARQ/TEL . . . . . . . . . . . . . . . . .    8
  125.                RING  . . . . . . . . . . . . . . . . . . . . . . . . .    9
  126.                RINGING . . . . . . . . . . . . . . . . . . . . . . . .    9
  127.           Caveats  . . . . . . . . . . . . . . . . . . . . . . . . . .    9
  128.  
  129.      SECURITY  . . . . . . . . . . . . . . . . . . . . . . . . . . . .   10
  130.           Discussion . . . . . . . . . . . . . . . . . . . . . . . . .   10
  131.           Vmodem's Implementation  . . . . . . . . . . . . . . . . . .   10
  132.           Developers Information . . . . . . . . . . . . . . . . . . .   10
  133.  
  134.      DIALING EXAMPLES  . . . . . . . . . . . . . . . . . . . . . . . .   11
  135.  
  136.      Telnet  . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   12
  137.           IBM's Telnet Client  . . . . . . . . . . . . . . . . . . . .   12
  138.  
  139.      Development and Debugging Tools . . . . . . . . . . . . . . . . .   13
  140.           Vmodem's Semaphores  . . . . . . . . . . . . . . . . . . . .   13
  141.           The Poor Man's Line Monitor (PMLM.EXE) . . . . . . . . . . .   13
  142.           VIEWPMLM.EXE . . . . . . . . . . . . . . . . . . . . . . . .   14
  143.           SIO's Utility (SU.EXE) . . . . . . . . . . . . . . . . . . .   14
  144.                IRQs that currently free for use  . . . . . . . . . . .   14
  145.  
  146.      Appendix A, Hardware Port and IRQ Assignments . . . . . . . . . .   15
  147.           Addresses and IRQs for COM1 and COM2 . . . . . . . . . . . .   15
  148.           Defacto standard for COM3 and COM4 . . . . . . . . . . . . .   15
  149.           Addresses and IRQ for COM3 through COM8 on the PS/2  . . . .   15
  150.  
  151.      Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   16
  152.  
  153.  
  154.  
  155.  
  156.                                                                           1
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.                                  WHAT IS VMODEM
  170.  
  171.      Vmodem is a software implementation of a modem, referred to as a
  172.      Virtual Modem.  Basically, it attempts to fake out other software
  173.      (like terminal programs) into believing they are accessing a real
  174.      modem.  Vmodem will turn any Terminal into a Telnet Client, and any
  175.      BBS into a Telnet Server.
  176.  
  177.      Normal (real) modems provide an interface that allows terminal
  178.      programs to pass digital information across telephone lines.  Vmodem
  179.      does the same thing from the application (terminal) program's point of
  180.      view.  However, the other side of Vmodem is not a phone line, but a
  181.      digital network like Internet.  Thus, Vmodem allows the hoards of
  182.      communications programs to pass information across Internet instead of
  183.      using phone lines.
  184.  
  185.      In addition to acting as a Telnet server, Vmodem uses a newly designed
  186.      protocol for communications networks, called the Virtual Modem
  187.      Protocol (VMP).  At this time, no other programs have implemented VMP,
  188.      thus Vmodem is required on both ends of the connection to use the VMP. 
  189.       However, VMODEM.EXE will accept inbound Telnet connections from any
  190.      system, meaning a BBS under vmodem can be accessed by just about
  191.      anyone with an Internet connection.
  192.  
  193.      Future implementations of Vmodem may access networks other than
  194.      Internet and use TCP/IP implementations other than IBM's.  The current
  195.      implementation of Vmodem works only on Internet, using the Internet
  196.      Access Kit (IAK) that is included with OS/2 V3 and IBM's TCP/IP (for
  197.      OS/2) version 2.0, with the August 1994 CSD applied.
  198.  
  199.      A single invocation of Vmodem can service all of the Internet ports
  200.      defined in the SIO command line.
  201.  
  202.  
  203.  
  204.  
  205.      2
  206.  
  207.                        DISTRIBUTION, ORDERING AND SUPPORT
  208.  
  209.      Distribution and Ordering
  210.  
  211.      Vmodem is a part of a larger package collectively known as SIO.  The
  212.      entire package collectively known as S